<template>
  <div class="confirmOrder">
    <!-- 头部 -->
    <div class="conOrder_header">
      <div class="hd_content">
        <p>
          <i class="el-icon-s-order"></i>
        </p>
        <p>确认订单</p>
        <router-link to></router-link>
      </div>
    </div>

    <!-- 内容 -->
    <div class="content">
      <!-- 收货地址 -->
      <div class="section-address">
        <p class="title">收货地址</p>
        <div class="address-body">
          <ul>
            <li
              :class="item.id == confirmAddress ? 'in-section' : ''"
              v-for="item in address"
              :key="item.id"
            >
              <h2>{{ item.name }}</h2>
              <p class="phone">{{ item.phone }}</p>
              <p class="address">{{ item.address }}</p>
            </li>
            <li class="add-address">
              <i class="el-icon-circle-plus-outline"></i>
              <p>添加新地址</p>
            </li>
          </ul>
        </div>
      </div>

      <!-- 商品列表优惠券 -->
      <div class="section-goods">
        <p class="title">商品及优惠券</p>
        <div class="goods-list">
          <ul>
            <li v-for="item in getCheckGoods" :key="item.id">
              <img :src="$target + item.productImg" alt="" />
              <span class="pro-name">{{ item.productName }}</span>
              <span class="pro-price">{{ item.price }}元 x {{ item.num }}</span>
              <span class="pro-status"></span>
              <span class="pro-total">{{ item.price * item.num }}元</span>
            </li>
          </ul>
        </div>
      </div>

      <!-- 配送 -->
      <div class="section-shipment">
        <p class="title">配送方式</p>
        <p class="shipment">包邮</p>
      </div>

      <!-- 发票 -->
      <div class="section-invoice">
        <p class="title">发票</p>
        <p class="invoice">电子发票</p>
        <p class="invoice">个人</p>
        <p class="invoice">商品明细</p>
      </div>

      <!-- 结算列表 -->
      <div class="section-count">
        <div class="money-box">
          <ul>
            <li>
              <span class="title">商品件数：</span>
              <span class="value">{{ getCheckNum }}件</span>
            </li>
            <li>
              <span class="title">商品总价：</span>
              <span class="value">{{ getTotalPrice }}元</span>
            </li>
            <li>
              <span class="title">活动优惠：</span>
              <span class="value">-0元</span>
            </li>
            <li>
              <span class="title">优惠券抵扣：</span>
              <span class="value">-0元</span>
            </li>
            <li>
              <span class="title">运费：</span>
              <span class="value">0元</span>
            </li>
            <li class="total">
              <span class="title">应付总额：</span>
              <span class="value">
                <span class="total-price">{{ getTotalPrice }}</span
                >元
              </span>
            </li>
          </ul>
        </div>
      </div>

      <!-- 结算导航 -->
      <div class="section-bar">
        <div class="btn">
          <router-link to="/shoppingCart" class="btn-base btn-return"
            >返回购物车</router-link
          >
          <a
            href="javascript:void(0);"
            @click="addOrder"
            class="btn-base btn-primary"
            >结算</a
          >
        </div>
      </div>
    </div>
  </div>
</template>

<script>
import { mapGetters } from "vuex";
import { mapActions } from "vuex";
import orderApi from "../api/orderApi";
export default {
  name: "",
  data() {
    return {
      confirmAddress: 1, // 选择的地址id
      // 地址列表
      address: [
        {
          id: 1,
          name: "陈同学",
          phone: "13580018623",
          address: "广东 广州市 白云区 江高镇 广东白云学院",
        },
        {
          id: 2,
          name: "陈同学",
          phone: "13580018623",
          address: "广东 茂名市 化州市 杨梅镇 ***",
        },
      ],
    };
  },
  mounted() {},
  methods: {
    ...mapActions(["deleteShoppingCart"]),
    addOrder() {
      let orderList = {
        user_id: this.$store.getters.getUser.user_id,
        products: this.getCheckGoods,
      };
      orderApi
        .addOrder(orderList)
        .then((res) => {
          let products = this.getCheckGoods;
          if (res.data.code == "001") {
            for (let i = 0; i < products.length; i++) {
              const temp = products[i];
              // 删除已经结算的购物车商品
              this.deleteShoppingCart(temp.id);
            }
            this.$notify({
              title: "成功",
              message: res.data.msg,
              type: "success",
            });
            // 跳转我的订单页面
            this.$router.push({ path: "/order" });
          } else {
            // 提示失败信息
            this.$notify({
              title: "警告",
              message: res.data.msg,
              type: "warning",
            });
          }
          // switch (res.data.code) {
          //   // “001”代表结算成功
          //   case "001":
          //     for (let i = 0; i < products.length; i++) {
          //       const temp = products[i];
          //       // 删除已经结算的购物车商品
          //       this.deleteShoppingCart(temp.id);
          //     }
          //     // 提示结算结果
          //     this.notifySucceed(res.data.msg);
          //     // 跳转我的订单页面
          //     this.$router.push({ path: "/order" });
          //     break;
          //   default:
          //     // 提示失败信息
          //     this.notifyError(res.data.msg);
          // }
        })
        // .catch((err) => {
        //   return Promise.reject(err);
        // });
    },
  },
  computed: {
    // 结算的商品数量; 结算商品总计; 结算商品信息
    ...mapGetters(["getCheckNum", "getTotalPrice", "getCheckGoods"]),
  },
  watch: {},
};
</script>

<style lang="scss" scoped>
.confirmOrder {
  background: #f5f5f5;
  padding-bottom: 20px;

  // 头部样式
  .conOrder_header {
    background-color: #fff;
    border-bottom: 2px solid #ff6700;
    margin-bottom: 20px;
    .hd_content {
      width: 1225px;
      margin: 0 auto;
      height: 80px;
      p {
        float: left;
        font-size: 28px;
        line-height: 80px;
        color: #424242;
        margin-right: 20px;
        i {
          font-size: 45px;
          color: #ff6700;
          line-height: 80px;
        }
      }
    }
  }

  //内容部分样式
  .content {
    width: 1225px;
    margin: 0 auto;
    padding: 48px 0 0;
    background-color: #fff;
    // 选择地址
    .section-address {
      margin: 0 48px;
      overflow: hidden;
      .title {
        color: #333;
        font-size: 18px;
        line-height: 20px;
        margin-bottom: 20px;
      }
      .address-body li {
        float: left;
        color: #333;
        width: 220px;
        height: 178px;
        border: 1px solid #e0e0e0;
        padding: 15px 24px 0;
        margin-right: 17px;
        margin-bottom: 24px;
        h2 {
          font-size: 18px;
          font-weight: normal;
          line-height: 30px;
          margin-bottom: 10px;
        }
        p {
          font-size: 14px;
          color: #757575;
        }
        .address {
          padding: 10px 0;
          max-width: 180px;
          max-height: 88px;
          line-height: 22px;
          overflow: hidden;
        }
      }
      .address-body {
        .in-section {
          border: 1px solid #ff6700;
        }
        .add-address {
          text-align: center;
          line-height: 30px;
          i {
            font-size: 30px;
            padding-top: 50px;
            text-align: center;
          }
        }
      }
    }

    //优惠券 商品列表
    .section-goods {
      margin: 0 48px;
      .title {
        color: #333;
        font-size: 18px;
        line-height: 40px;
      }
      .goods-list {
        padding: 5px 0;
        border-top: 1px solid #e0e0e0;
        border-bottom: 1px solid #e0e0e0;
        li {
          padding: 10px 0;
          color: #424242;
          overflow: hidden;
          img {
            float: left;
            width: 30px;
            height: 30px;
            margin-right: 10px;
          }
          .pro-name {
            float: left;
            width: 650px;
            line-height: 30px;
          }
          .pro-price {
            float: left;
            width: 150px;
            text-align: center;
            line-height: 30px;
          }
          .pro-status {
            float: left;
            width: 99px;
            height: 30px;
            text-align: center;
            line-height: 30px;
          }
          .pro-total {
            float: left;
            width: 190px;
            text-align: center;
            color: #ff6700;
            line-height: 30px;
          }
        }
      }
    }

    //配送
    .section-shipment {
      margin: 0 48px;
      padding: 25px 0;
      border-bottom: 1px solid #e0e0e0;
      overflow: hidden;
      .title {
        float: left;
        width: 150px;
        color: #333;
        font-size: 18px;
        line-height: 38px;
      }
      .shipment {
        float: left;
        line-height: 38px;
        font-size: 14px;
        color: #ff6700;
      }
    }

    //发票
    .section-invoice {
      margin: 0 48px;
      padding: 25px 0;
      border-bottom: 1px solid #e0e0e0;
      overflow: hidden;
      .title {
        float: left;
        width: 150px;
        color: #333;
        font-size: 18px;
        line-height: 38px;
      }
      .invoice {
        float: left;
        line-height: 38px;
        font-size: 14px;
        margin-right: 20px;
        color: #ff6700;
      }
    }

    //结算列表
    .section-count {
      margin: 0 48px;
      padding: 20px 0;
      overflow: hidden;
      .money-box {
        float: right;
        text-align: right;
        .title {
          float: left;
          width: 126px;
          height: 30px;
          display: block;
          line-height: 30px;
          color: #757575;
        }
        .value {
          float: left;
          min-width: 105px;
          height: 30px;
          display: block;
          line-height: 30px;
          color: #ff6700;
        }
        .total {
          .title {
            padding-top: 15px;
          }
          .value {
            padding-top: 10px;
          }
        }
        .total-price {
          font-size: 30px;
        }
      }
    }

    //结算导航
    .section-bar {
      padding: 20px 48px;
      border-top: 2px solid #f5f5f5;
      overflow: hidden;
      .btn {
        float: right;
        .btn-base {
          float: left;
          margin-left: 30px;
          width: 158px;
          height: 38px;
          border: 1px solid #b0b0b0;
          font-size: 14px;
          line-height: 38px;
          text-align: center;
        }
        .btn-return {
          color: rgba(0, 0, 0, 0.27);
          border-color: rgba(0, 0, 0, 0.27);
        }
        .btn-primary {
          background: #ff6700;
          border-color: #ff6700;
          color: #fff;
        }
      }
    }
  }
}
</style>